/*Reverse bits of a given 32 bits unsigned integer.*/


unsigned reverseBits(unsigned int x){
	unsigned int result = 0;
	while( i++ < 32 ){
		result <<= 1;
		result += x & 1;
		x >>= 1;
	}
	return result;
}

int main(){
	unsigned int x =  2147483648 ;
	unsigned int y = reverseBits(x);//964176192 
	printf("%u", y);
	return 0;
}
